import Axios from '../utils/fetch'
import { WxBridgePay } from '../utils/pay'
import { Toast } from 'vant'

const Methods = {
  methods: {
    $WechatPayActivity: async(
      id, // 活动ID
      SuccessHandler = () => {
        // 支付成功后的 处理方式
        console.log('支付成功')
      }
    ) => {
      const { data } = await Axios({
        url: '/activity/apply',
        method: 'POST',
        params: {
          activityId: id
        }
      })
      // 需要支付
      const status = data && data.data && data.data.status
      const d = data && data.data && data.data.params
      if (d && status === 'need_pay') {
        // 开始调用微信支付
        WxBridgePay({
          appId: d.appId, // 公众号ID，由商户传入
          timeStamp: `${d.timeStamp}`, // 时间戳，自1970年以来的秒数
          nonceStr: d.nonceStr, // 随机串
          packages: d.package, // hi
          signType: d.signType, // 微信签名方式：
          paySign: d.paySign, // 微信签名
          SuccessHandler
        })
        return
      }
      // 不需要支付
      if (status === 'apply_success') {
        SuccessHandler()
      } else {
        Toast((data && data.msg) || '申请失败')
      }
    }
  }
}

export default Methods
